4 research outputs found
Investigating ChatGPT's Potential to Assist in Requirements Elicitation Processes
Natural Language Processing (NLP) for Requirements Engineering (RE) (NLP4RE)
seeks to apply NLP tools, techniques, and resources to the RE process to
increase the quality of the requirements. There is little research involving
the utilization of Generative AI-based NLP tools and techniques for
requirements elicitation. In recent times, Large Language Models (LLM) like
ChatGPT have gained significant recognition due to their notably improved
performance in NLP tasks. To explore the potential of ChatGPT to assist in
requirements elicitation processes, we formulated six questions to elicit
requirements using ChatGPT. Using the same six questions, we conducted
interview-based surveys with five RE experts from academia and industry and
collected 30 responses containing requirements. The quality of these 36
responses (human-formulated + ChatGPT-generated) was evaluated over seven
different requirements quality attributes by another five RE experts through a
second round of interview-based surveys. In comparing the quality of
requirements generated by ChatGPT with those formulated by human experts, we
found that ChatGPT-generated requirements are highly Abstract, Atomic,
Consistent, Correct, and Understandable. Based on these results, we present the
most pressing issues related to LLMs and what future research should focus on
to leverage the emergent behaviour of LLMs more effectively in natural
language-based RE activities.Comment: Accepted at SEAA 2023. 8 pages, 5 figure
RE-centric Recommendations for the Development of Trustworthy(er) Autonomous Systems
Complying with the EU AI Act (AIA) guidelines while developing and
implementing AI systems will soon be mandatory within the EU. However,
practitioners lack actionable instructions to operationalise ethics during AI
systems development. A literature review of different ethical guidelines
revealed inconsistencies in the principles addressed and the terminology used
to describe them. Furthermore, requirements engineering (RE), which is
identified to foster trustworthiness in the AI development process from the
early stages was observed to be absent in a lot of frameworks that support the
development of ethical and trustworthy AI. This incongruous phrasing combined
with a lack of concrete development practices makes trustworthy AI development
harder. To address this concern, we formulated a comparison table for the
terminology used and the coverage of the ethical AI principles in major ethical
AI guidelines. We then examined the applicability of ethical AI development
frameworks for performing effective RE during the development of trustworthy AI
systems. A tertiary review and meta-analysis of literature discussing ethical
AI frameworks revealed their limitations when developing trustworthy AI. Based
on our findings, we propose recommendations to address such limitations during
the development of trustworthy AI.Comment: Accepted at [TAS '23]{First International Symposium on Trustworthy
Autonomous Systems
Robotic Software Development using DevOps
Background: Due to the complexity involved in robotic software development, the progress in the field has been slow. Component-based software engineering was observed to have a strong influence on the improvement of the robotic software development process and its adoption achieved good results. DevOps was seen to be compatible and produced efficient results in software engineering. Objectives: The aim of this thesis work is to present the potential usage of DevOps practices in robotic software development. 15 DevOps practices were selected from prior research from software engineering and mapped to the robotic software development process and checked for success in terms of applicability and effectiveness. Methods: By performing a research synthesis of the literature, the usage of DevOps practices in robotic software development is proposed and presented. Interview based survey was performed by approaching industry experts on robotic software development to get their response on the results of the research synthesis. Results: The applicability of the DevOps practices in robotic software development is presented and the implications of the potential usage of the practices in the proposed manner are discussed. The potential advantages and limitations of the proposed mapping are discussed and presented. Conclusions: DevOps, like other software development frameworks, has various observable advantages when applied in robotic software development. The interviews confirmed the need for DevOps to be adapted into robotic software development and the benefits it has
Robotic Software Development using DevOps
Background: Due to the complexity involved in robotic software development, the progress in the field has been slow. Component-based software engineering was observed to have a strong influence on the improvement of the robotic software development process and its adoption achieved good results. DevOps was seen to be compatible and produced efficient results in software engineering. Objectives: The aim of this thesis work is to present the potential usage of DevOps practices in robotic software development. 15 DevOps practices were selected from prior research from software engineering and mapped to the robotic software development process and checked for success in terms of applicability and effectiveness. Methods: By performing a research synthesis of the literature, the usage of DevOps practices in robotic software development is proposed and presented. Interview based survey was performed by approaching industry experts on robotic software development to get their response on the results of the research synthesis. Results: The applicability of the DevOps practices in robotic software development is presented and the implications of the potential usage of the practices in the proposed manner are discussed. The potential advantages and limitations of the proposed mapping are discussed and presented. Conclusions: DevOps, like other software development frameworks, has various observable advantages when applied in robotic software development. The interviews confirmed the need for DevOps to be adapted into robotic software development and the benefits it has